gsk_gl_renderer_clear (self);
glDisable (GL_BLEND);
+ if (self->has_depth_buffer)
+ {
+ glEnable (GL_DEPTH_TEST);
+ glDepthFunc (GL_LESS);
+ }
+ else
+ glDisable (GL_DEPTH_TEST);
/* Opaque pass: front-to-back */
GSK_NOTE (OPENGL, g_print ("Rendering %u opaque items\n", self->opaque_render_items->len));
render_item (self, item);
}
+ if (self->has_depth_buffer)
+ {
+ glEnable (GL_DEPTH_TEST);
+ glDepthFunc (GL_LEQUAL);
+ }
+
glEnable (GL_BLEND);
glBlendFuncSeparate (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE);
glBlendEquation (GL_FUNC_ADD);